<?php

	require_once('../../../code/utils.php');

	session_start();

	if (!isset($_SESSION['datos']))
		$_SESSION['datos'] = array();

	switch ($_REQUEST['operacion'])
	{
		// -------------------------------------------
		case 'lista':
			resp('datos', $_SESSION['datos']);
			ret();
			break;

		// -------------------------------------------
		case 'borrar_todo':
			$_SESSION['datos'] = array();
			break;

		// -------------------------------------------
		case 'borrar':
			for ($i = 0; $i < sizeof($_SESSION['datos']); $i++)
			{
				// Buscar el elemento de la lista que tenga el mismo codigo.
				if ($_SESSION['datos'][$i]['codigo'] == $_REQUEST['codigo'])
				{
					// Borrar el elemento.
					array_splice($_SESSION['datos'], $i, 1);
					break;
				}
			}
			break;

		// -------------------------------------------
		case 'agregar':
			$datos = validar ($_REQUEST, array
			(
				'nombre' => array(
					'obligatorio' => array(true, 'Obligatorio!')
				),

				'apellido' => array(
					'obligatorio' => array(true, 'Obligatorio!')
				)
			));

			$datos['codigo'] = 'S'.rand()*rand();
			$_SESSION['datos'][] = $datos;

			break;

		// -------------------------------------------
		case 'guardar_cambios':
			$datos = validar ($_REQUEST, array
			(
				'codigo' => array (
					'obligatorio' => array(true, 'Obligatorio!')
				),

				'nombre' => array(
					'obligatorio' => array(true, 'Obligatorio!')
				),

				'apellido' => array(
					'obligatorio' => array(true, 'Obligatorio!')
				)
			));

			for ($i = 0; $i < sizeof($_SESSION['datos']); $i++)
			{
				if ($_SESSION['datos'][$i]['codigo'] == $datos['codigo'])
				{
					$_SESSION['datos'][$i]['nombre'] = $datos['nombre'];
					$_SESSION['datos'][$i]['apellido'] = $datos['apellido'];
					break;
				}
			}

			break;
	}

	ret();
